package com.wisdytech.linkdcs.equipment.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.wisdytech.app.produceExecute.vo.CollectParamVO;
import com.wisdytech.linkdcs.equipment.dto.EquipmentAuoAlarmDTO;
import com.wisdytech.linkdcs.equipment.model.CollectionParam;
import com.wisdytech.linkdcs.equipment.vo.EquipmentAutoAlarmVO;

/**
 * <p>
  *  Mapper 接口
 * </p>
 *
 * @author Yanghu
 * @since 2017-09-16
 */
public interface IEqCollectionParamDao extends BaseMapper<CollectionParam> {
    
   /**
    *  
    * @return 查询参数管理列表结果
    */
   public List<CollectionParam> selectParamPage(Map<String, Object> queryMap);

   /**
    * 
    * @param queryMap 查询参数条件
    * @return 查询参数可视化管理列表结果
    */
   public List<CollectionParam> selectViewParamPage(Map<String, Object> queryMap);
   /**
    * 
    * @param param
    */
   public void updateShowLevel(CollectionParam param);
   
   /**
    * 
    * <p>Description: 查找告警的参数列表</p>
    * @return
    */
   public List<EquipmentAutoAlarmVO> selectParamAutoAlarm(EquipmentAuoAlarmDTO dto);
   
   
   /**
    * 
    * <p>Description: 根据设备id和展示等级 查找参数</p>
    * @param id 设备id
    * @param level 显示等级
    * @return
    */
   public List<CollectionParam> selectParamView(@Param("id")String id,@Param("level")String level);
   
   /**
    * 
    * <p>Description: 根据设备类型获取参数</p>
    * @param modelId
    * @return
    */
   public List<CollectionParam>  selectParamByModelId(String modelId);
   
   /**
    * 
    * <p>Description: 根据设备类型获取参数</p>
    * @param modelId
    * @return
    */
   public List<CollectionParam>  selectParamByModelCode(String modelCode);
   
   /**
    * 
    * <p>Description: 根据设备类型和设备名称获取参数</p>
    * @param modelId 设备类别id
    * @param name 设备名称
    * @return
    */
   public List<CollectionParam>  selectParamByModelIdAndName(
		   @Param("modelId")String modelId,@Param("paramName")String paramName);
   
   
   /**
    * 
    * <p>Description: 根据设备获取参数</p>
    * @param eqId 设备id
    * @param collectionType 采集方式 为空查询全部
    * @return
    */
   public List<CollectionParam>  selectParamByEqId(@Param("eqId")String eqId,
		   @Param("collectionType")String collectionType);
   
   
   /**
    * 
    * <p>Description: 根据设备获取参数</p>
    * @param eqId 设备id
    * @param collectionType 采集方式 为空查询全部
    * @return
    */
   public List<CollectionParam>  selectParamByEqCode(@Param("eqCode")String eqCode,
		   @Param("search")String search,@Param("type")String type);

   /**
    * 
    * <p>Description: 根据设备ID获取环境参数</p>
    * @param equipId 设备类别id
    * @return
    */
   public List<CollectionParam> selectEnvironmentParam(String equipCode);
   /**
    * 
    * <p>Description: 通过设备编码查询采集项明细信息</p>
    * @param equipCode
    * @return
    */
  public List<CollectParamVO> getCollectionParamByEqCode(Map<String, Object> param);

   public CollectionParam getEuipmentParamById(@Param("pkId")String pkId);
   
   
   
   

}